// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "FTLog.generated.h"

DECLARE_LOG_CATEGORY_EXTERN(FTLog, Log, All);

#define LOG_WITH_LOCATION(Format, ...)	\
UE_LOG(FTLog, Display, TEXT("%s - " Format), TEXT(__FUNCTION__), ##__VA_ARGS__)

#define LOG_WITH_LOCATION_WARNING(Format, ...) \
UE_LOG(FTLog, Warning, TEXT("%s - " Format), TEXT(__FUNCTION__), ##__VA_ARGS__)

#define LOG_WITH_LOCATION_ERROR(Format, ...) \
UE_LOG(FTLog, Error, TEXT("%s - " Format), TEXT(__FUNCTION__), ##__VA_ARGS__)

#if WITH_EDITOR
#define DISABLE_OPTIMIZATION \
_Pragma("optimize(\"\", off)")
#define ENABLE_OPTIMIZATION \
_Pragma("optimize(\"\", on)")
#else
#define DISABLE_OPTIMIZATION
#define ENABLE_OPTIMIZATION
#endif


/**
 * 
 */
UCLASS()
class LEARNPLUGIN_API UFTLog : public UObject
{
	GENERATED_BODY()
	
};
